import type { MeetingRoomSearchParams } from "@/service/api/types/room";

export const processRoomSearchParams = (
    params: MeetingRoomSearchParams
): MeetingRoomSearchParams => {
    const params_: MeetingRoomSearchParams = {};
    // 此处后端的写法是，如果不需要筛选某个字段就不传某个字段，所以需要过滤掉不需要的字段
    // 先过滤掉出device以外的字段，因为device是对象需要额外处理
    Object.entries(params).forEach(([key, value]) => {
        if (value !== "" && value !== 0 && value !== null && key !== "device") {
            params_[key as keyof MeetingRoomSearchParams] = value;
        }
    });
    // 再过滤device字段，如果device里需要进行筛选就填充device对象，否则device为空
    Object.entries(params.device!).forEach(([key, value]) => {
        if (value) {
            if (!params_.device) {
                params_.device = { [key]: value };
            } else {
                params_.device = { ...params_.device, [key]: value };
            }
        }
    });
    return params_;
};
